package com.fate.system.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;
import java.util.Date;

import io.swagger.v3.oas.annotations.media.Schema;
import jakarta.validation.constraints.Size;
import lombok.Data;
import org.hibernate.validator.constraints.Length;

/** 定时任务 @TableName sys_quartz_job */
@TableName(value = "sys_quartz_job")
@Data
public class QuartzJob implements Serializable {
  /** id */
  @TableId private String id;

  /** 任务名称 */
  private String jobName;

  /** 任务类名 */
  private String jobClassName;

  /** cron表达式 */
  private String cronExpression;

  /** 参数 */
  private String parameter;

  /** 描述 */
  private String description;

  /** 状态 */
  private Integer status;

  /** 创建人 */
  private String createBy;

  /** 更新人 */
  private String updateBy;

  /** 逻辑删除 */
  @TableLogic private Integer deleted;

  /** 创建时间 */
  @TableField(fill = FieldFill.INSERT)
  private LocalDateTime gmtCreate;

  /** 修改时间 */
  @TableField(fill = FieldFill.INSERT_UPDATE)
  private LocalDateTime gmtModified;

  @Serial
  @TableField(exist = false)
  private static final long serialVersionUID = 1L;
}
